Artículo
|
[ASP.NET vNext] Strongly Typed Data Controls, No más Eval y Bind! |
Seguro que los que habéis trabajado con ASP.NET conocéis fijo las templates de los controles de ASP.NET ¿verdad? y sino pues las templates de controles de datos basicamente nos permiten modificar o customizar el HTML que emiten al cliente usando expresiones de databinding como Eval y Bind, algo como esto:
Eval
Para solo mostrar la información hacemos uso de Eval One-Way-Binding
Bind
Para mostrar y modificar la información usamos Bind Two-Way-Binding
¿Cual es el problema de esto?
Hay 2 problemas con esto desde mi punto de vista:
•No es fácil recordar como se llaman todas las propiedades de nuestras clases o entidades.
•En la vista HTML no disponemos de Intellisense para los Data Controls y es posible que al escribir el nombre del campo mal, en tiempo de ejecucuión nos salte una excepción.
Para evitar esto y facilitarnos un poco más la vida, en la próxima versión de ASP.NET tendremos los Strongly Typed Data Controls

Como se aprecia en la imagen haciendo uso del atributo ModelType le indicamos al control cual será la clase de nuestro modelo con la que vamos a trabajar y ya tenemos disponible en el intellisense todos los campos. El Item es equivalente al método Eval
El equivalente al método Bind es BindItem
Si nos equivocamos en el nombre del campo, en tiempo de diseño el Intellisense de Visual Studio nos avisará:

Mola! ¿no?
Un saludo.
Eval
Para solo mostrar la información hacemos uso de Eval One-Way-Binding
Bind
Para mostrar y modificar la información usamos Bind Two-Way-Binding
Título: Descripción:
¿Cual es el problema de esto?
Hay 2 problemas con esto desde mi punto de vista:
•No es fácil recordar como se llaman todas las propiedades de nuestras clases o entidades.
•En la vista HTML no disponemos de Intellisense para los Data Controls y es posible que al escribir el nombre del campo mal, en tiempo de ejecucuión nos salte una excepción.
Para evitar esto y facilitarnos un poco más la vida, en la próxima versión de ASP.NET tendremos los Strongly Typed Data Controls

Como se aprecia en la imagen haciendo uso del atributo ModelType le indicamos al control cual será la clase de nuestro modelo con la que vamos a trabajar y ya tenemos disponible en el intellisense todos los campos. El Item es equivalente al método Eval
El equivalente al método Bind es BindItem
Título: Descripción:
Si nos equivocamos en el nombre del campo, en tiempo de diseño el Intellisense de Visual Studio nos avisará:

Mola! ¿no?
Un saludo.
![]() |
Publicado por: Luis Ruiz Pavón |
|
|
Comentarios
Últimas noticias
Últimos artículos














































